//
//  HJChatManagerProtocol.h
//  KaiChat
//
//  Created by lx on 2023/10/20.
//

#import <Foundation/Foundation.h>

NS_ASSUME_NONNULL_BEGIN

@class HJChatMessageModel, HJChatGroupModel, HJChatFriendModel;

@protocol HJChatManagerProtocol <NSObject>

@optional

- (void)sendMessageWithModel:(HJChatMessageModel *)messageModel begin:(void (^__nullable)(void))begin completion:(void (^__nullable)(id  _Nullable response, NSError  * _Nullable error))completion;

- (void)insertMessageWithModel:(HJChatMessageModel *)messageModel completion:(void (^__nullable)(void))completion;
- (void)getOriginalImageWithMessageWithModel:(HJChatMessageModel *)messageModel completion:(void (^__nullable)(UIImage *  _Nullable image))completion;

- (void)getFirstLoginReplyMessageCompletion:(void (^__nullable)(HJChatMessageModel  * _Nullable replyMessageModel, NSError  * _Nullable error))completion;
- (void)getFAQMessageCompletion:(void (^__nullable)(HJChatMessageModel  * _Nullable replyMessageModel, NSError  * _Nullable error))completion;
- (void)sendKeywordReplyMessageWithModel:(HJChatMessageModel *)messageModel begin:(void (^__nullable)(void))begin completion:(void (^__nullable)(HJChatMessageModel  * _Nullable replyMessageModel, NSError  * _Nullable error))completion;

- (void)loadOfficialAccountCompletion:(void (^__nullable)(NSArray  * _Nullable datas))completion;
- (void)queryOfficialAccountCompletion:(void (^__nullable)(NSArray  * _Nullable datas))completion;

- (void)setBadgeNumber:(NSInteger)number completion:(void (^__nullable)(NSError  * _Nullable error))completion;




@end

NS_ASSUME_NONNULL_END
